<?php
/**
 * 
 * 计算字符串的长度，包括中文，英文
 * @param string $str 
 * @param string $charset 默认utf8
 */
function sstrlen($str,$charset='utf8') {        
        $n = 0; $p = 0; $c = '';
        $len = strlen($str);
        if($charset == 'utf8') {
            for($i = 0; $i < $len; $i++) {
                $c = ord($str{$i});
                if($c > 252) {
                    $p = 5;
                } elseif($c > 248) {
                    $p = 4;
                } elseif($c > 240) {
                    $p = 3;
                } elseif($c > 224) {
                    $p = 2;
                } elseif($c > 192) {
                    $p = 1;
                } else {
                    $p = 0;
                }
                $i+=$p;$n++;
            }
        } else {
            for($i = 0; $i < $len; $i++) {
                $c = ord($str{$i});
                if($c > 127) {
                    $p = 1;
                } else {
                    $p = 0;
            }
                $i+=$p;$n++;
            }
        }        
        return $n;
}

/**
 * 去掉斜杠
 * //
 * @param array $variable 
 * @param booble $top 是否循环内部
 * @example  if(get_magic_quotes_gpc()){	
 * 			$_GET=_striplashes_rurs($_GET);
 * 			$_POST=_striplashes_rurs($_POST);}
 */

 
 function _striplashes_rurs($variable,$top=true){
 		$claen_data=array();
 		foreach ($variable as $key=>$value){
 			$key=$top?$key:stripcslashes($key);
 			$claen_data[$key]=(is_array($value))?
 			_striplashes_rurs($value,false):stripcslashes($value);
 		}
 		return $claen_data;
}
 
 	
